Ensure that queue_translation is paired with the right X operation
authorAlexander Larsson <alexl@redhat.com>
Thu, 13 Aug 2009 12:25:35 +0000 (14:25 +0200)
committerAlexander Larsson <alexl@redhat.com>
Thu, 13 Aug 2009 12:46:02 +0000 (14:46 +0200)
commit939e55223cefb14ec4a6866c073bd79ee75eaccc
tree5e8a5a09f506330d41df9c3f9928b0a07924d193
parente25ac0b5cbf9c8b3b8ff3dd7c4bf22f8f480132f
Ensure that queue_translation is paired with the right X operation

The X11 queue_translation operation uses NextRequest to get the serial
of the XCopyArea operation where the translation should end. However,
if the gc passed to gdk_draw_drawable has a non-flushed clip region
(which it commonly has now for the window clipping) then the next
operation will be the GC flush, not the XCopyArea.

To handle this right we now pass in the GC to be used to
queue_translation and ensure that it is flushed before calling
NextRequest().
gdk/directfb/gdkwindow-directfb.c
gdk/gdkoffscreenwindow.c
gdk/gdkwindow.c
gdk/gdkwindowimpl.h
gdk/quartz/gdkgeometry-quartz.c
gdk/quartz/gdkprivate-quartz.h
gdk/win32/gdkwindow-win32.c
gdk/x11/gdkgeometry-x11.c
gdk/x11/gdkprivate-x11.h